package com.simtop.mapper;

import com.simtop.pojo.*;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

/**
 * @Classname SqUserMapper
 * @Description TODO
 * @Date 2021/12/28 15:18
 * @Created by lzb
 */

@Mapper
public interface SqUserMapper {


    /**
     * 获取所有社群用户信息
     * @param
     * @return
     */
     List<SqUser> gitCaptchaUser();


    int gitCountMembergrade(int membergrade);

    int getCountConsumption(int con);

    int gitCountChannel(String channel);

    List<SqUser> singleUserPortraitName();

    SqUser singleUserPortrait(String userName);


    SqUser showUserPortraits(Integer useralonelabelIds);

    List<SqUser> lookupGroupUserTable(@Param("joindatestart") Date joindatestart, @Param("joindateend") Date joindateend, @Param("registerdatestart") Date registerdatestart, @Param("registerdateend") Date registerdateend,@Param("memcount") int memcount,@Param("concount") int concount,@Param("channel") String channel, @Param("area") String area,@Param("preference") String preference,@Param("education") String education,@Param("profession") String profession);

    SqUser extractASingleCommunityUserBasedOnId(String s);

    List<SqUser> getCommunityUniqueId(@Param("sex")String sex,@Param("age") int age,@Param("preference") String preference,@Param("membergrade") int membergrade,@Param("consumption") int consumption);

    int getTheNumberOfBoys(@Param("sqid")List<Long> sqid);

    int getTheNumberOfGirl(@Param("sqid") List<Long> sqid);

    SqUser viewByUserId(@Param("userId") Long userId);

    List<SqUser> analysisByID(@Param("listids")List<Long> listids);

    AgedistributionVo getageDistribution(@Param("listids")List<Long> listids);

    ConsumptionDistributionVo consumptionDistribution(@Param("listids")List<Long> listids);

    int getAllcount();


    ConsumptVo getsr(@Param("listids") ArrayList<Long> listWithoutDuplicates);

    List<SqUser> getAllId();

    LocalDistributionVo localDistribution(@Param("listids") ArrayList<Long> listWithoutDuplicates);
}
